using System;
using System.ComponentModel;
using System.Drawing;
using System.Drawing.Design;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using PickGold.Charting.Design;

namespace PickGold.Charting
{
	[TypeConverter(typeof(NoNameExpandableObjectConverter)), SRDescription("DescriptionAttributeAnnotationSmartLabelsStyle_AnnotationSmartLabelsStyle"), DefaultProperty("Enabled"), AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
	public class AnnotationSmartLabelStyle : SmartLabelStyle
	{
		public AnnotationSmartLabelStyle()
		{
			base.chartElement = null;
		}

		public AnnotationSmartLabelStyle(object chartElement)
			: base(chartElement)
		{
		}

		[EditorBrowsable(EditorBrowsableState.Never), Browsable(false), DefaultValue(typeof(Color), "Transparent"), SRDescription("DescriptionAttributeCalloutBackColor"), TypeConverter(typeof(ColorConverter)), Editor(typeof(ChartColorEditor), typeof(UITypeEditor)), SRCategory("CategoryAttributeAppearance")]
		public override Color CalloutBackColor
		{
			get
			{
				return base.CalloutBackColor;
			}
			set
			{
				base.CalloutBackColor = value;
			}
		}

		[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DefaultValue(1), SRDescription("DescriptionAttributeCalloutLineAnchorCapStyle"), SRCategory("CategoryAttributeAppearance")]
		public override LineAnchorCapStyle CalloutLineAnchorCapStyle
		{
			get
			{
				return base.CalloutLineAnchorCapStyle;
			}
			set
			{
				base.CalloutLineAnchorCapStyle = value;
			}
		}

		[SRCategory("CategoryAttributeAppearance"), EditorBrowsable(EditorBrowsableState.Never), TypeConverter(typeof(ColorConverter)), Browsable(false), Editor(typeof(ChartColorEditor), typeof(UITypeEditor)), DefaultValue(typeof(Color), "Black"), SRDescription("DescriptionAttributeCalloutLineColor")]
		public override Color CalloutLineColor
		{
			get
			{
				return base.CalloutLineColor;
			}
			set
			{
				base.CalloutLineColor = value;
			}
		}

		[Browsable(false), EditorBrowsable(EditorBrowsableState.Never), DefaultValue(5), SRDescription("DescriptionAttributeLineDashStyle"), SRCategory("CategoryAttributeAppearance"), PersistenceMode(PersistenceMode.Attribute)]
		public override ChartDashStyle CalloutLineDashStyle
		{
			get
			{
				return base.CalloutLineDashStyle;
			}
			set
			{
				base.CalloutLineDashStyle = value;
			}
		}

		[EditorBrowsable(EditorBrowsableState.Never), Browsable(false), DefaultValue(1), SRDescription("DescriptionAttributeLineWidth"), SRCategory("CategoryAttributeAppearance")]
		public override int CalloutLineWidth
		{
			get
			{
				return base.CalloutLineWidth;
			}
			set
			{
				base.CalloutLineWidth = value;
			}
		}

		[Browsable(false), SRDescription("DescriptionAttributeCalloutStyle3"), SRCategory("CategoryAttributeMisc"), EditorBrowsable(EditorBrowsableState.Never), DefaultValue(1)]
		public override LabelCalloutStyle CalloutStyle
		{
			get
			{
				return base.CalloutStyle;
			}
			set
			{
				base.CalloutStyle = value;
			}
		}
	}
}

